﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace PIT.Labs.ProjectRepository.Owl2DotNet
{
    /// <summary>
    /// Represents an arbitrary element from an ontology
    /// </summary>
    public interface IEntity
    {
        /// <summary>
        /// Get the URI of the entity
        /// </summary>
        Uri Uri
        {
            get;
        }

        /// <summary>
        /// Get the human readable label of the entity
        /// </summary>
        String Label
        {
            get;
        }

        /// <summary>
        /// Annotations for this entity
        /// </summary>
        IDictionary<IAnnotationProperty, IValue> Annotations
        {
            get;
        }

        /// <summary>
        /// Ontology this entity belongs to
        /// </summary>
        IOntology Ontology
        {
            get;
        }
    }
}
